# _*_ coding:utf-8 _*_
# 开发团队: Mavericks
# 开发人员：Maverick·Ming
# 开发IDE： PyCharm
#   项目名：HelloWorld
#   文件名：7.08 文件写入.py
# 开发时间：2021/3/29 16:18


# 创建文件名变量
# file_name = 'demo.txt'
file_name = 'chinese_poem.txt'

# 写入前：
with open(file_name, 'r', encoding='utf-8') as file_obj:
    print(20 * '-', '写入内容前', 20 * '-')
    print(file_obj.read())

# 写入内容(未指定打开模式时，写入)：
# with open(file_name, encoding='utf-8') as file_obj:
#     file_obj.write('以上是程序员的诗句')
# 未指定mode='w'执行时，出现错误，是因为open操作默认以可读的方式打开，没有以可写的方式
# open(file_name, encoding='utf-8') == open(file_name, mode='r', encoding='utf-8')

# 写入内容（指定mode=’w‘时，写入：会截断文件）：
# with open(file_name, 'w', encoding='utf-8') as file_obj:
# write()是用于向文件中写入内容的函数
# 如果操作纯文本文件，则write()需要传递一个字符串作为参数
# r = file_obj.write('以上是程序员的诗句')
# 结果：截断文件（指将原文删除，新增’以上是程序员的诗句‘）
# print('write()会返回写入字符串的长度len=', r)

with open(file_name, 'a', encoding='utf-8') as file_obj:
    file_obj.write('以上是程序员的诗句')

# 写入之后：
with open(file_name, 'r', encoding='utf-8') as file_obj:
    print(20 * '-', '写入内容后', 20 * '-')
    print(file_obj.read())
